VOZÍTKO S MECANUM OMNI
KOLY
Vágner Vlastimil
Po sestavení první stavebnice vozítka s obyčejnými koly řízené
pomocí Arduino Nano a motorového driveru s L298, jsem se rozhodl pro
stavbu vozítka s Mecanum Omni koly. Použil jsem Mecanum Omni kola o průměru
80mm, ovládání vozítka je s Arduno Uno a
motorového driveru s IO 74HC595 a dvěma IO L293D, řízení je jako
v první variantě podvozku pomocí tabletu s aplikací sériového
terminálu pro Android s bluetooth na vozítku. Stavba vozítka může posloužit
při podobných pokusech s uvedenými koly, sestavené vozítko rozšiřuje přípravky
uvedené v [2].
POUŽITÝ PODVOZEK PRO
VOZÍTKO
Pro použití uvedených kol je možné použít jak stavebnici „podvozku se 4
koly nebo stavebnici robotického podvozku“ z nabídky v [1], součástí první stavebnice jsou čtyři motory osazené
na převodovku s obyčejnými koly, druhá stavebnice také obsahuje podvozek
se čtyři motory osazených na převodovku s Mecanum Omni koly. Pokud se použijí
Mecanum Omni kola o průměru 60mm je možné bez úpravy použít pro stavbu vozítka podvozek
se čtyřmi obyčejnými koly. V případě použití Mecanum Omni kol o průměru
80mm je nutné provést úpravu podvozku, při použití stavebnice robotického
podvozku nejsou pro stavbu vozítka nutné žádné úpravy. Já jsem použil vytištěný
díl podvozku na 3D tiskárně podle první varianty stavebnice a upravil podvozek
tak že výstupy na bocích podvozku byli odstraněny. V obou případech stavby
vozítka ze zvoleného podvozku je možné pouhou výměnou kol a změnou zadání
parametrů v programu využít jeden podvozek pro oba typy kol. Podvozek
vozítka si označíme a toto označení bude značit směr jízdy vpřed.
ŘÍDÍCÍ JEDNOTKA A MOTOROVÝ DRIVER
Pro ovládání motorů je použit modul s Arduino Uno a motorový driver
s L293D ovládání uvedených IO L293D je posuvným registrem 74HC595,
uvedený motorový driver je osazen na shield s Arduino Uno tak že je tento
plně využit pro ovládání posuvného registru. Zbývající dva PINY D2 a D13 jsou
použity pro komunikaci s tabletem nebo chytrým telefonem a na uvedených
PINECH jsou doplněny dva dutinkové konektory. Napájení motorového driveru, i
Arduino Uno je ze dvou článků Li-Ion zapojených do série o celkovém napětí
8.2V. Napájení Arduino je z motorového driveru kde necháme ponechán Jumper
na propojce pro napájení Arduino Uno. Modul Arduina je namontován na destičku
z plexiskla a celek je namontován na horní díl podvozku, v destičce
jsou osazeny dvě gumové průchodky o průměru 6mm pro vodiče napájející motory.
Použitá destička pro Arduino Uno je také z nabídky v [1], napájecí baterie Li-Ion jsou uchyceny k hornímu
dílu podvozku pomocí nalepovacího suchého zipu. Výstupy QA, QB, QC, QD, QE, QF,
QG, QH posuvného registru ovládají vstupy motorových driverů IO L293D výstupy QC a QD ovládají motor označený M1 výstup
QC=P1(+) svorkovnice X1, výstup QD= P2 svorkovnice X1. Výstupy QE a QB ovládají
motor označený M2 výstup QE=P5(+) svorkovnice X1, výstup QB=P4 svorkovnice X1,
výstupy QH a QF ovládají motor M3 výstup QH=P1(+) svorkovnice X2, výstup QF=P2
svorkovnice X2. Výstupy QG a QA ovládají motor M4, výstup QA=P5(+) svorkovnice
X2, výstup QG=P4 svorkovnice X2. Ovládání PWM motoru M1 je z PINU11 Arduina,
PWM motoru M2 je z PINU3 Arduina, PWM motoru M3 je z PINU6 Arduina,
PWM motoru M4 je z PINU5 Arduina. Výstupu 74HC595 QA odpovídá hodnota „1“,
výstupu QB odpovídá hodnota „2“, výstupu QC odpovídá hodnota „4“. Výstupu QD
odpovídá hodnota „8“, výstupu QE odpovídá hodnota „16“, výstupu QF odpovídá
hodnota „32“, výstupu QG odpovídá hodnota „64“, výstupu QH odpovídá hodnota
„128“.
PŘIPOJENÍ A OVLÁDÁNÍ
MOTORŮ
Ovládání všech čtyř motorů je ze dvou IO L293D PWM pro řízení otáček je
přímo z pinů Arduino Uno. IO1 ovládá motory označené M1 a M2 vývody
z IO1 L293 jsou zakončeny ve
svorkovnici označené X1, motor M1 se připojuje do svorek označených P1 a P2. Do
svorek P4 a P5 se připojuje motor M2 svorka označená P3 je trvale spojena
s GND (-) a je nepoužitá, IO2 L293D ovládá motory označené M3 a M4 připojené
do svorkovnice označené X2. Motor označený M3 se připojuje do svorek označených
P1 a P2. Do svorek označených P4 a P5 se připojuje motor označený M4, svorka
označená P3 je trvale spojena s GND (-) a je nepoužitá. Před osazením
motorů na podvozek si je označíme M1, M2, M3, M4 a odzkoušíme je aby se při pohybu vpřed točily stejnou rychlostí
a stejným směrem „nectností použitých motorů je to že se jedním směrem točí
pomaleji“. Po odzkoušení motorů a směru otáčení pro pohyb vpřed si na motorech označíme kde bude připojen kladný pól napájení
(+) a na vývody napájení motorů přiletujeme vodiče o délce tak aby stačili pro
připojení do motorového driveru. Po namontování motorů na podvozek
s naletovanými vodiči nasadíme na převodovky Mecanum Omni kola jedno kolo
označené „L“ nasadíme na levé straně podvozku na motor označený M1 a druhé kolo
označené také „L“ nasadíme na převodovku motoru označeného M3 na pravé straně podvozku.
Jedno kolo označené „R“ nasadíme na převodovku motoru M4 na pravé straně
podvozku vpředu ve směru jízdy vpřed, druhé kolo označené „R“ nasadíme na
převodovku motoru označeného M2 na levé straně podvozku, při nasazování kol si
druhý vývod z převodovky podržíme tak aby se dalo kolo nasadit a nezničili
jsme převodovky „ kola jdou ztuha nasadit“ nákres osazení kol je na Obr.č.03.
Kladný napájecí vodič motoru M1 je připojen do svorkovnice X1 a svorky P1,
záporný napájecí vodič motoru M1 je připojen do svorkovnice X1 svorky P2,
kladný napájecí vodič motoru M2 je připojen do svorkovnice X1 svorky P5 a
záporný napájecí vodič motoru M2 je připojen do svorkovnice X1 svorky P4.
Kladný napájecí vodič motoru M3 je připojen do svorkovnice X2 svorky P1 a
záporný napájecí vodič motoru M3 je připojen do svorkovnice X2 svorky označené
P2. Kladný napájecí vodič motoru M4 je připojen do svorkovnice X2 svorky P5 a
záporný napájecí vodič motoru M4 je připojen do svorkovnice X2 svorky P4 nákres
připojení motorů je na Obr.č.01. PŘIPOJENÍ MOTORŮ JE NUTNÉ DODRŽET
Z DŮVODU PROGRAMOVÉHO OVLÁDÁNÍ MOTORŮ.
SÉRIOVÝ TERMINÁL ANDROID A
ZADÁVÁNÍ HODNOT
V sériovém terminálu vypneme příkazy CR a LF dále jsou
v programu předvoleny tlačítka M1 až M10 po jejichž rozkliknutí je možné
zadat hodnoty pro ovládání motorů. V mém případě je rozvrženo M1 – jízda
vpřed, M2 – jízda rovně vpravo, M3 – jízda vzad, M4 – jízda rovně vlevo, M5 –
jízda šikmo vpravo vpřed. M6 – jízda šikmo vlevo vpřed, M7 – jízda šikmo vpravo
vzad, M8 – jízda šikmo vlevo vzad, M9 – otočení kolem osy a M10 – stop motorů
pro všechny směry. Sériový terminál
komunikuje a Arduino pomocí bluetooth JDY-32 pro komunikaci je nutno vyrobit
převodník napěťových úrovní podle Obr.č.02 tento je vyrobený na univerzální
vrtané destičce. napájení bluetooth je z desky motorového driveru kde je
osazen dvou vývodový konektor na vývodech DPS (+) a (.) modul bluetooth je také
zakoupený v [1]. V terminálu zadáváme celkem pět hodnot první hodnota je
součet hodnot výstupů které mají být
sepnuty pro požadovaný pohyb vozítka, druhá zadávaná hodnota je hodnota PWM pro
motor M1, třetí zadávaná hodnota je hodnota PWM pro motor M2, čtvrtá zadávaná
hodnota je hodnota PWM pro motor M3, pátá zadávaná hodnota je hodnota PWM pro motor
M4. „Příklad vozítko má jet vpřed zadáváme hodnota pro posuvný registr je
149,200,200,200,200“. Jízda vpřed šikmo vpravo zadáváme hodnoty
132,120,0,120,0. Všechny směry pohybu vozítka i s nákresem směru otáčení
motorů jsou na Obr.č.04, Obr.č.05, Obr.č.06. Stejně postupujeme při výpočtu
hodnot pro posuvný registr 74HC505 při ovládání vozítka osazeného obyčejnými
koly
PROGRAM ARDUINO
Program má název
AUTO_L293.ino je uložen v adresáři Arduino využívá pouze jednu knihovnu
pro komunikaci sériovým portem který je součástí programovacího prostředí IDE
pro Arduino.
Horní díl podvozku s označeným směru jízdy vpřed
Motorový driver s osazenými konektory pro
komunikaci
Osazený modulu Arduino s motorovým driverem na
horním dílu podvozku
Osazené motory na spodním dílu podvozku
s naletovanými napájecími vodiči motorů
Sestavený podvozek vozítka
Detailní pohled na motorový driver
Boční pohled na vozítko
Použité prameny:
[1] laskarduino popisy použitých modulů
[2] www.mojeelektronika.mzf.cz
Bližší informace: